import CustomNavBar from '@/components/CustomNavBar/CustomNavBar.vue';
import FilterPopup from '@/components/PopUpSift/PopUpSift.vue';
import LeeDatetimeVue from '../../../components/LeeDatetime/LeeDatetime.vue';
import date from '@/computingTool/date.js';
import api from '../../../http/api';
export default {
	components: {
		FilterPopup,
		LeeDatetimeVue,
		CustomNavBar
	},
	data() {
		return {
			showFilter: false,
			filterData: {
				startTime: '',
				endTime: '',
				orderTypes: ['bank', 'wechat'],
				orderStatus: ['pending']
			},
			// 类型映射
			typeMap: {
				bank: '银行卡',
				wechat: '微信',
				alipay: '支付宝',
				unionpay: '云闪付',
				digital: '数字人民币',
				dingtalk: '钉钉'
			},
			// 状态映射
			statusMap: {
				pending: '待支付',
				confirmed: '待确认',
				completed: '已完成',
				paused: '暂停中',
				canceled: '已取消'
			},
			//交易记录
			tradeList: [], // 当前显示的账单列表
			page: 1, // 当前页码
			pageSize: 10, // 每页数据量
			isLoading: true, // 防止重复加载
			noMoreData: false, // 是否已无更多数据

			recordList: false,
			activeTab: 0 // 0:我的返佣, 1:下级返佣
		};
	},
	computed: {
		selectedOrderTypes() {
			return this.filterData.orderTypes.map(type => this.typeMap[type] || type);
		},
		selectedOrderStatus() {
			return this.filterData.orderStatus.map(status => this.statusMap[status] || status);
		},
		totalNavHeight() {
			const app = getApp();
			// 确保 globalData 存在，提供默认值
			return (app.globalData?.statusBarHeight || 0) + (app.globalData?.navBarHeight || 44);
		}
	},
	onLoad() {
		this.loadData(); // 首次加载数据
	},
	methods: {
		// 初始化加载数据
		loadData() {
			api.divideRecord({
			  type:this.activeTab + 1,
			  page: this.page,
			  limit: this.pageSize
			}).then(res=>{
				if (res.data.list.length === 0) {
					if(res.data.page == 1){
						this.tradeList = res.data.list;
						this.page++;
						this.noMoreData = false;
					}else{
						this.noMoreData = true; // 标记无更多数据
						uni.showToast({ title: '没有更多数据了', icon: 'none' });
					}
				  
				} else {
					if(res.data.page == 1){
						this.tradeList = res.data.list;
						this.noMoreData = false;
						this.page++;
					}else{
						this.tradeList = [...this.tradeList, ...res.data.list]; // 合并新数据
						this.page++;
					}
				  
				}
			}).catch(err=>{
				console.error('加载数据失败:', err);
			}).finally(fee=>{
				this.isLoading = false;
			})
		},
		switchTab(index) {
			this.page = 1;
			this.activeTab = index;
			this.loadData();
			// 添加加载对应数据的逻辑
		},
		//复制订单号
		copyOrderNumber(orderNumber){
			uni.setClipboardData({
				data: orderNumber,
				success: () => {
					uni.showToast({
						title: '订单号已复制',
						icon: 'success'
					});
				},
			});
		},
		/* 过滤器start */
		//收款渠道
		paytype(value){
			if(value==1){
				return '银行卡'
			}else if(value==2){
				return '微信'
			}else if(value==3){
				return '支付宝'
			}else if(value==4){
				return '云闪付'
			}else if(value==5){
				return '数字人民币'
			}else if(value==6){
				return '钉钉'
			}
		},
		//收款渠道图片
		payimg(value){
			if(value==1){
				return '/static/payImg/yinghangkazhuangzhang.png'
			}else if(value==2){
				return '/static/payImg/weixin.png'
			}else if(value==3){
				return '/static/payImg/zhifubao.png'
			}else if(value==4){
				return '/static/payImg/yunshanfu.png'
			}else if(value==5){
				return '/static/payImg/shuzirenmingbi.png'
			}else if(value==6){
				return '/static/payImg/dingding.png'
			}
		},
		//订单状态
		orderStart(value){
			if(value==0){
				return '待支付'
			}else if(value==1){
				return '已抢单'
			}else if(value==2){
				return '已支付'
			}else if(value==3){
				return '已完成'
			}else if(value==4){
				return '已取消'
			}
		},
		//时间戳
		timeString(value){
			// 1. 转换时间戳
			const timestamp = value;
			const millis = timestamp * 1000;
			
			// 2. 格式化为字符串"2025-07-18 17:59:55" (北京时间)
			const dateStr = new Date(millis).Format("yyyy-MM-dd hh:mm:ss");
			return dateStr
			
			// 3. 使用自定义格式 "2025年07月18日 17时59分"
			// const customFormat = new Date(millis).Format("yyyy年MM月dd日 hh时mm分");
		},
		/* 过滤器end */
		handleOrderTypesUpdate(newTypes) {
			this.filterData.orderTypes = newTypes;
		},
		handleOrderStatusUpdate(newStatus) {
			this.filterData.orderStatus = newStatus;
		},
		handlePickTime(type) {
			//console.log('ss')
			// 调用Uniapp日期选择器

		},
		handleDateTimeChange(returnV) {
			// 接收子组件返回的对象
			console.log("选择的时间文本:", returnV.text);
			console.log("选择的时间值:", returnV.value);

			// 更新父组件数据（可选）
			this.selectedDateTime = returnV.value;

			// 其他业务逻辑...
		},
		resetFilter() {
			this.filterData = {
				startTime: '',
				endTime: '',
				orderTypes: [],
				orderStatus: []
			};
		},
		applyFilter(filter) {
			console.log('应用筛选条件:', filter);
			uni.showToast({
				title: '筛选条件已应用',
				icon: 'success'
			});
			this.showFilter = false;
		},
		//滚动底部，请求新数据
		GetNewData() {
			console.log("请求数据")
			if (this.isLoading || this.noMoreData) return; // 避免重复加载
			this.isLoading = true;
			this.loadData();
		}
	},
	onPullDownRefresh() {
		this.page = 1
		this.loadData(); // 首次加载数据
		setTimeout(()=>{
			uni.stopPullDownRefresh()//下拉停止
			uni.showToast({ title: '刷新成功', icon: 'success' });
		},1500)
	},
};